                                                                                                                                                    
                                                                                                                                                    
                          ===                                        ==  ==                                                                         
                        =$###$=        ======  == === ==            $#$=$#$===                       === ===              ########################  
        $##$=          $##   #$=     =$######$=$#=$#$=#$  ===      =# #$# #$##$            ====== ===$#$=$#$              #                      #  
     $##= #$=#   $#$ =$# $===$ #=  $#  $$$$$$  $##   $ #=$#=#  =====# $ =$$  =#=         $##    #$# # $ #  #=             ###xxxxxxx####xxxxxxx###  
    =#    #$=#  =###=$#=  ==== #$  # $$======== $#$$$ =#$#  #=$####$#= $$==$ #$= =====  =#=# $$ ###  $=$  #$=             ### xxxxx##### xxxxx####  
   ==# $$ #$$#= $# #$## ## $== ##==# $===   $=== #$== #$# $ $###   ##$ ===$ =#==$#####$=$#$# =$ #=$# ===$ #####$=         #### xxx###x### xxx#####  
  $##= $= #$$#$=# $ #=#### $== #$#=# $== ### $== $#== ## $=   # $$$  # ===$ #$ =#     #$#=$# ==$ #$# ==$ #=    ###$=       ### xxx##x##x# xxx##x#   
  #  $$=== #$$#$# $ #$$## $=== #$#=# $== #$$# $== #== # $==$ ##$===$$# ===$ #= $# $$$$ ##$#$ ==$ #$# ==$ #$$$$$   ##$      #x# xxx#####x# xxx####   
  $#= $=== #$$## $== #$$# $== #$$#$# $== #$$# $== #== #$=== ##$======# ===$ #==# ====$ #$$# ====$ ## ==$ #=====$$$  #$      x# xxx###  x# xxx###    
  =$#$ $=== #$$# $== #$# $=== ####$# $== #$## $== #== #===== # $   ==# ===$ #=$# ====$ #$$# ====$ ## ==$ #========$$ #$      # x#x###  x# x#x##     
    =#$ $=== ## $==== # $=== #$$$ ## $==$  $$=== #$== #=== ####$  ## # ===$ #$# ======$ ##$ =====$ # ==$ #$ $###  ==$ #$     # xx####  x# xx###     
     $# $=== # $======  $=== #=== ## $===$$===  #$=== #== ##$$$##### # ===$ ## ===$ ==$ ## ====$==$ ===$ #$ #$$$## ==$ #     # #xx###  x# #xx##     
     =#$ $===  $====== $==== #==== # $======= ##$$=== #== #$$$$$$$$$## ===$ #####$ # ==$ # ===$ ===$===$ #$ #$$$$# ==$ #=    # x#x###  x# x#x##     
      $# $=== $========$=== #$===== #$======= #$=$=== #= #$$$$$$$$$$## ===$ ##   # # ==$ #$===$ =======$ #$ #$$$$$# =$ #$    # #x####  x# #x###     
      =#$ $================ #== $== #$======== # $=== #= #$$$$$$$$$$## ===$ # $$ #$## ==$ #==$ # =====$ #$$ #$$$$$# ==$ #=   # x#x###  x# x#x##     
       $# $=======  $===== #$== $=== #=== $=== ####$= #= #$$$$$$$$$### ===$ ### $ ### ==$ #$=$ # =====$ #=$ #$$$$$# ==$ #=   # #x####  x# #x###     
        $# $===== ## $=== #$== # $=== #== # $=== # #= #== $#$$$$$## $# ====$$$$=$ #$$====$ #$##$# ====$ #=$ #$###$# ==$ #=   # ######  x# #####     
        =#$ $=== $### $== #== $## $=== #= ## $===  #= #$==  #####  $=# =========$ #=======$ #=#$$# ===$ #=$ ##  $# ===$ #=   # ##x###  x# ##x##     
         $# $=== #$$# $= #$== #   $==== # #$#  $== #= #$====     $$==#    =====$ #$=======$ #  #$## =$ #$=$ #  ##$ ===$ #=   # ######  x# #####     
         =#$ $= $#$$## $ #$==  $$$===== ####$##   #=== #$===$$$$$====####$      ##     ====$  $ #$# =$ #==$ # $   ==== #$    # #x####  x# #x###     
          $# $= #$$$$## #=$==$$========= # ##$$###==== # $$=========  #$############### ====$$$ #$$#   #==$ # =$$$===$ #= ### ##### #### ##### ###  
          =#$ $ #$$$### # $=======   $=== # #$$$#  ==  =#  =======  ##$$#$===$ $#$$$$$$# =====$ #$$$###$==$ # ======$ #$  #  #######    #######  #  
           $#  $#$$$#=$#=$======  ### $===  #$##= $  $  ###       ##$$$##  ==$  #######$#  ==$ ##$$$$#  == $ # ====  #$   # ########## ###########  
            $#$#$$#$= $# $=== ##$$$#### $== #$#####=####$#$$$$$$$$$$#$=# ### ### #=  =$#$$$#####$$### ### ## ######$=     ########################  
            =###$$#= =# $==== #$$##$==$#   #$####$$##$$#####$$$$$$##$==$####$#$###    =$#$$$$##$==$####$$##$##$##$=       ########################  
             =$#$#$  $#  $==  #$$#=   =$##$$##$=$##$$####$=$######$=    =$####$###     =$#####$=   =$###$#$##$##$          x#x#x#x#x#x#x#x#x#x#x#   
              =##$= =#= $ $ $ =#$#=     =$###$=  =$##$===   ======        =$###$=        ======      =$##$#$=====           x#xxx#xxx#xxx#xxx#xx    
               =$=  =# ### ### #$#        ===     ====                     =====                      =====                                         
                =   =$######$$###$                                                                                                                  
                       =$####$$#$=                                                                                                                  
                             ===                                                                                                                    
                                                                                                                                                    
                                                                                                                                                    
                                                                                                                                                    
                                                                                                                                                    
                                                                                                                                                                                      
                                                ##########:     :##X +#X    ###:                                                                    
                                                ##########:     :##X ###+   ###:                                                                    
                                                ###+            :##X $##:   ###:                                                                    
                                                ###+            :##X .+:    ###:                                                                    
                                                ###+        +$#$=##X X##: #######: ;X##X+   :##X:X#$                                                
                                                ###+       +##XX###X X##: #######:=######=  :##$##XX                                                
                                                #########  $#X  :##X X##:   ###: .##$. $##. :###x.                                                  
                                                #########  ##+  :##X X##:   ###: +##+  =##+ :###                                                    
                                                ###+      .##:  :##X X##:   ###: +##+  +##+ :##X                                                    
                                                ###+      :##:  :##X X##:   ###: =##+  +##+ :##X                                                    
                                                ###+       ##:  :##X X##:   ###: +##+  +##+ :##X                                                    
                                                ###+       ##+  :##X X##:   ###: +##+  =##; :##X                                                    
                                                ###+       x#X  :##X X##:   X##: .##$. $##. :##X                                                    
                                                ##########::##=+$##X X##:   +##$+.=######=  :##X                                                    
                                                ##########: :X##x##X X##:    +X##: +X##X+   :##X                                                    


                                                                                                           
                                                                                                                                                    
                                                                                                                                                    
                                                                                                                                                    
                                                                                                                                                    
This editor was created by evmatter
If you have any questions or comments about this editor, email evmatter@gmail.com


TABLE OF CONTENTS:

  Part 1: INTRO

    I.    OVERVIEW

    II.   GETTING STARTED

    III.  MENU BAR

  Part 2: LEVEL EDITING

    IV.   TILES

    V.    OBJECTS

    VI.   REGIONS

    VII.  WARPS

    VIII. MISC. LEVEL PROPERTIES

  Part 3: RESOURCE EDITING

    IX.   TILE SETS

    X.    GRAPHICS

    XI.   PALETTE SETS

    XII.  OBJECT SETS

  Part 4: OTHER

    XIII. CREDITS

    XIV.  ALTERNATE TILE SETS

    XV.   BOSS ROOMS

    XVI.  SOURCE CODE

    XVII. MISC



--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

Part 1: INTRO

--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

I. OVERVIEW

    This is a level editor for Wario Land 2 for the gameboy color. It is intended for making 
mods of the game. If you use this editor to create any material (mods, videos, etc.), it 
would be nice to give credit and say that you used this editor. One thing that you CANNOT do 
is take credit for creating this editor. If you distribute this editor in any way, you must 
include this readme file in its current state. If you have any suggestions for the editor, 
want to contribute, found any bugs, or have any othe comments regarding the editor, please 
email evmatter@gmail.com.

    There is an editor for Wario Land 3 made by Drenn. Some of the ideas from this editor 
were used after viewing the Wario Land 3 editor. Therefore, some things may appear similar. 
This is completely intentional. However, the source code for this editor was not built off
of the source code from the Wario Land 3 editor.

--------------------------------------------------------------------------------------------

II. GETTING STARTED

    Open the .jar file to begin running the program. If the program returns an error, make 
sure that you have the latest version of Java installed. However, it should run if you have 
the latest version of Java 6 or any newer java version. If the program starts successfully, 
a dialog box should appear asking for a file name. You must open up a valid Wario Land 2 
.rom file for the gameboy color. The recommended version of the rom is 
"Warioland 2 (U) [C][b2]". If the file is not valid, the program will show an error message 
and terminate. This editor will also open any modded version of Wario Land 2 for the gameboy 
color made with this editor. Using an older version of this editor (less than version 1.1.0) 
may not open files that were made with this version.

    If the file opened successfully, a window should appear with the first level of the 
game showing. The editor is divided into two sections: the top section and the bottom 
section.

    The top section contains different tabs that allow you to edit different parts of the 
level. The tabs have three different colors: white, light grey, and medium grey. When on a 
White tab, you can only edit the level that you're on, so any changes here don't affect 
other levels. When on a light grey tab, you can edit the resources of the game. Changes on 
these tabs can potentially alter other levels, so they're a bit more advanced to use. Medium 
grey tabs (only one tab right now) allow you to edit miscellaneous parts of the game but 
won't have any effect on the levels.

    The bottom section is where the level is drawn. In some tabs, such as Tile Set, the 
bottom section is used for editing other parts of the game. This section's view can be 
navigated by using the scroll bars or alternatively holding down the middle mouse button and 
dragging.

    Sectors are mentioned many times in this file. Each level is divided into 30 sectors 
(10 wide and 3 tall). Each sector is 16x16 tiles. You can view sectors by checking sectors 
in the "view" menu in the MENU BAR.

--------------------------------------------------------------------------------------------

III. MENU BAR

    -File
        -Open: (ctrl + o) opens a new .rom file. If the file is invalid, the program will 
            show an error message and terminate.
        -Save: (ctrl + s) saves the current .rom file being edited.
        -Save as...: (ctrl + shift + s) saves the current .rom file to a different file.

    -Edit
        -Undo: (ctrl + z) undoes the last change you made. Can undo up to 10 times.
        -Redo: (ctrl + y) redoes the last change you made.

    -View
        -Objects: toggles whether or not objects are displayed.
        -Regions: toggles whether or not regions are displayed.
        -Sectors: toggles whether or not sectors are displayed.
        -Warps: toggles whether or not warps are displayed.

        -Background: toggles whether or not the current level is displayed as if all of the 
            breakable blocks were destroyed and all of the coins were collected.
        -Switch: some levels change based on whether or not a switch is turned on. This 
            toggles whether or not the level is displayed with the switch on or off.

        -Color: displays the level in color (default).
        -Tile ID: displays each tile based on the ID of the tile.
        -Tile Type: displays each tile based on the type of the tile.

        -1/2x zoom: displays the level at half its normal size.
        -1x zoom: displays the level at its normal size.
        -2x zoom: displays the level at twice its normal size.
        -4x zoom: displays the level at four times its normal size.

    -Level (Changes the current level)
        -Chapter 1
            -Chapter 1 Story 1: changes the current level to Chapter 1 Story 1
            -Chapter 1 Story 2: changes the current level to Chapter 1 Story 2
            ...
        -Chapter 2
            -Chapter 2 Story 1: changes the current level to Chapter 2 Story 1
            -Chapter 2 Story 2: changes the current level to Chapter 2 Story 2
            ...
        ...
        etc.


--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

Part 2: LEVEL EDITING

--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

IV. TILES

    Each level is 160 tiles wide and 48 tiles high. Tiles can be a variety of things such as 
walls, backgrounds, breakable objects, coins, water, warps, etc. Each level can have up to 
128 different tiles. To edit tiles, you must be in the "Tiles" panel at the top half of the 
editor.

    Left clicking any of the tiles in the right half of the "Tiles" panel sets that tile as 
the currently selected tile. Also, right clicking on a tile in the level viewer sets that 
tile as the currently selected tile. To place a tile in the level, left click in the level 
viewer to place the currently selected tile into the level.

    The currently selected tile has a red box drawn around it. Some objects are breakable, 
so when they are destroyed they turn into a different tile. If an object is has a 
background, the tile that it turns into will have a blue box drawn around it.

    The left half of the "Tiles" panel shows what type of tile is currently selected. The 
name of the tile type will be displayed at the top of the panel. The names of the tile types 
should be mostly self-explanatory, so they won't all be mentioned in this file. Tiles with 
[number] at the end indicate the id of the background tile if the tile has a background.

    The left half of the "Tiles" panel also lets you change the size of the brush. The brush 
size changes how many tiles are placed when placing a tile in the level viewer. There is 
also an option called "Tile match". Switching this on will highlight all of the tiles that 
are the same ID as the tile that the mouse is over.

--------------------------------------------------------------------------------------------

V. OBJECTS

    In addition to tiles, the level is also made up of objects. Objects are things such as 
enemies, falling platforms, entrance modifiers, etc. In the level viewer, objects are 
represented by colored squares with a number in it. What each number represents is dependent 
on which region the object is in. To place objects, you must be in the "Objects" panel at 
the top half of the editor.

    The left half of the "Objects" panel contains the objects you can choose from in a 
particular region. The current region you are in is highlighted green. Clicking on one of 
the numbered squares will set that object as the currently selected object. Right clicking 
on an object in the level viewer will also set that object as the currently selected object. 
A description of the selected object is shown beneath the objects you can choose from.

    Objects 1-5 are entrance modifies. They affect what Wario is doing when he enters a 
region. They must be placed on top of the entrance point of the region in order to work. 
These 5 objects are the only ones that will not change based on the region you are in.

    Objects 6 and 7 are never used.

    Objects 8-15 change based on the region you are in. On the right half of the "Objects" 
panel there are a bunch of sprites. These sprites change depending on the current region. 
If you choose an object, make sure that its sprites are displayed on the right, otherwise it 
will not work. For instance, if you choose an object and its description is "boss", but 
there are not boss sprites on the right, then the object will not work.

    To delete an object, the currently selected object must be set to nothing (the white X). 
Right clicking on a place with no object in the level viewer also sets the current object to 
nothing. Left clicking on an object when "nothing" is selected removes the object. 
Alternatively, press the delete key when the mouse is over an object to delete it.

    Keep in mind that having too many objects on the screen at once will cause some sprites 
not to display correctly. This is a limitation of the gameboy, not a bug in the editor.
    There are many objects that are labeled "unknown". These objects do not seem to have any
effect.

--------------------------------------------------------------------------------------------

VI. REGIONS

    Every level is divided into different regions. The regions are what define different 
sections of each level. In the level viewer, regions are displayed as red squares. The 
currently selected region is displayed as a green square. To change the currently selected 
region, click on any of the region. Regions also set different properties of each section 
such as palette, scroll type, animated tiles, and object sets. At any given time, wario will 
be in a region. The camera will not leave the region, even if wario goes off the edge. To 
edit the properties of regions, you must be in the "Regions" panel at the top half of the 
editor.

    The region panel:

    -region: the region that is currently selected.
    -duplicate: duplicate the selected region. This is the only way to add more regions.
    -delete: deletes the selected region. If there is only one region left, you cannot 
        delete any more regions.
    -palette set: changes what palette is used for the selected region. Values range 
        from 0-202, although only value 0-69 are actually used in the original game.
    -scroll type: 
        -default: the camera will follow you from left to right, but the y position will not 
            change unless you go up or down one floor.
        -no lock: the camera will follow you in any direction.
        -lock x: the camera will move up and down, but will not move horizontally.
        -lock x and y: the camera will not move.
        -boss: the scroll type used for every boss room.
        -train: the bottom of the screen will scroll horizontally and there will be 
            occasional train bumps.
        -train inside: same as train except that the bottom of the screen does not scroll
            horizontally.
        -train roof: same as train except that the top of the screen scrolls horizontally. 
            Vertical scrolling does not work when using this scroll type.
        -train roof (underground): same as train roof except that the top of the screen 
            scrolls faster.
    -use alternate tile set: turn this on if you want the region to use an alternate tile 
        set. Alternate tile sets can be edited from the "tile set" panel. Using an alternate 
        tile set does not change the behavior of the tiles, just the appearance of the 
        tiles. More information about alternate tile sets can be found in the section
        ALTERNATE TILE SETS.

    -bottom left x: the x-coordinate (in sector coordinates) of the left edge of the region.
        Values range from 0-9.
    -bottom left y: the y-coordinate (in sector coordinates) of the bottom edge of the 
        region. Values range from 0-2.
    -width: the number of sectors the region spans horizontally.
    -height: the number of sectors the region spans vertically.

    -animated subtiles: every region can only have up to 4 animated 8x8 subtiles (there are 
        4 subtiles to every tile). Changing this value changes which animated subtiles this 
        region uses. A preview of the 4 animated subtiles are displayed lower in the panel. 
        Values 0 and 15 do not move. The values range from 0-23.
    -animation speed: controls how fast the animation speed of the animated subtiles is. The 
        values range from 1-127.
    -object set: every region can have one set of objects. Changing this affects what 
        objects are displayed in the region. A preview of what objects are used in each set 
        is displayed lower in the panel. The values range from 0-139. Values 128-139 are 
        used for bosses.


    In some levels, some of the regions overlap each other. Even though the game itself does 
this, it is not recommended. Overlapping regions may cause some parts of the level not to 
display properly when in the editor.
    Due to the nature of the game, if a region is created but nothing warps to it, the 
region will be deleted when you try to open up the .rom file again.

--------------------------------------------------------------------------------------------

VII. WARPS

    Warps allow Wario to teleport from one part of the stage to another. Warps can either be 
in the form of a door or a tile that warps Wario when hit. After Wario enters a warp, he 
will appear in a specific sector. When in the warp panel or whenever view warps is turned 
on, orange lines will display the paths of warps. Warp targets are displayed as a red circle 
with a smaller blue circle inside of it. Each sector can only warp to one other sector. Each 
sector can only have one warp target. The spot that he appears in the sector is specified by 
the warp target. To edit warps, you must be in the "Warps" panel at the top half of the 
editor.

    On the left half of the "Warps" panel, there are 2 options: "Edit warp sectors" and 
"Editor warp targets". When editing warps, it helps if viewing sectors is turned on.

    Edit warp sectors:

    Each sector warps to exactly one other sector. When on this mode, you can change the 
sector that each sector warps to. Clicking on a sector in the level viewer will change which 
sector you are editing. The current sector will have a blue "X" and a blue square drawn on 
top of it. If the sector warps to another sector, the sector that the sector warps to will 
have a green square with a green circle drawn on top of it, and the region that it warps to 
will be highlighted in green.
    To change what sector the sector warps to, left click on the sector you want to change, 
then right click on the sector that you want it to warp to. If you want the sector to not 
warp to anywhere, right clicking on the sector that the sector warps to causes that warp to 
be removed.

    When on this mode, the right side of the "Warp" panel is active. This side of the panel 
lets you change some things whenever Wario warps from the currently selected sector. With 
the "target region" option, you can change the target region rather than the target sector. 
Right clicking in the level viewer automatically assigns the target region based on the 
target sector, but this allows you to manually change it.
    Sometimes when Wario uses a warp, the properties of the target region change based on 
the warp he uses. This is how levels like the first level in "Uncanny Mansion" and the level 
"Coming back is difficult" are able to change out the object set. Most of the time, you 
don't want the region to change, so most of the sectors will have "same as target region" 
checked. Having this checked will cause the target region not to be changed.

    To change where Wario is when the level starts, select the top-left sector of the level, 
then change where that sector warps to. The sector that it warps to is the sector where 
Wario will start.

    Edit warp targets:

    To decide where in the sector Wario appears after using a warp, a target must be 
specified. To edit these targets, go to this mode and hover the mouse over a sector. Click 
on a tile in the sector to have Wario warp to that tile when entering the sector. To remove 
the target, right click on the target.


    When two doors warp to each other, keep in mind that you must edit warps so that door 1 
warps to door 2 AND door 2 warps to door 1. This cannot be done automatically. The tile for 
the door must also be the correct tile type. Setting the warp target on top of a door will 
not cause it to function as a door unless the tile is of type "warp door". If it works 
correctly, an orange line will be drawn between the two doors with a target drawn on top of 
each door.

--------------------------------------------------------------------------------------------

VIII. MISC. LEVEL PROPERTIES

    In the "Misc." panel, you can edit properties specific to the current level.

    music: changes the music played in the level. In addition to songs used in the levels, 
you can also play music used in other places such as menus and credits. If the song does not 
loop, then "(no loop)" will be at the end of the song name. The songs from "Woods 1" through 
"Ruins 4" as well as "The Really Final Chapter" are the only songs that are actually used in 
levels.
    coin count: displays the amount of coins that can be collected in the level excluding 
coins gained from breakable objects and enemies.

    In the bottom panel, you can change the name of the level. On the right half of the 
panel, there are several tiles on the left, and the name of the level is on the right. 
Clicking a tile on the left will set that tile as the currently selected tile for editing 
the level name. Left clicking on the right side where the name is will change the name. 
Right clicking on the name area will set the tile clicked on as the currently selected tile. 
When the name of the level is changed, it will change in the "level" menu in the menu bar. 
If the first level of the chapter is being edited, then changing the chapter name will 
affect the chapter name in the "level" menu in the menu bar.
    If you want to change the actual graphics that are used in showing the name of the level 
you can do so by editing the fixed size subtiles in the graphics tab. See the GRAPHICS 
section for more details.

--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

Part 3: RESOURCE EDITING

--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

IX. TILE SETS

    As of version 1.1.0, tile sets be edited from the "Tile Set" panel. Unlike the previous 
panels, editing things in this panel can potentially change things in other levels that use 
the same resources. Each level uses resources such as subtiles, tile types, metatiles, and 
tile colors that can be used by any other level. Therefore, each level basically has its own 
tile set made up of these resources, but changing the resources can affect other levels that 
use the same resources. If you want to know what levels and regions these resources are used 
in, hover the mouse above the text fields to see a list of levels and regions that use the 
resource.

    The tile set panel:

    -edit alternate tile sets: Checking this box lets you edit alternate tile sets. For now, 
        you can have up to 64 alternate tile sets. Since using an alternate tile set does 
        affect tile behavior, editing tile behavior is not allowed when this box is checked. 
        Only a few alternate tile sets are actually used in the original game.
    -primary subtiles: changes the first 80 subtiles used in this level. 4 subtiles are 
        combined to form 1 tile. The upper half of the subtiles to choose from are not used 
        in the gameboy color version of the game. These subtiles look similar to the ones 
        used in the gameboy color version of the game and are most likely left there from 
        the original non-color version.
    -secondary subiltes: same as the primary subtiles options, but changes the next 48 
        subtiles used in this level.
    -tile types: changes what tile type set is used in this level. A tile type set contains 
        the data for the behavior of tiles. Typically, you don't want to change this unless 
        you're creating a new tile set or changing the level to use an existing tile set. 
        Only values 0-22 are actually used in the original game, but you can use values up 
        to 39 which contain uninitialized tile type sets.
    -metatiles: changes what metatile set is used in this level. A metatile set contains 
        the data for what subtiles go to which tiles. Typically, you don't want to change 
        this unless you're creating a new tile set or changing the level to use an existing 
        tile set. Only values 0-25 are actually used in the original game, but you can use 
        values up to 31 which contain uninitialized metatile sets.
    -tile colors: changes what tile color set is used in this level. A tile color set 
        contains the data for what palettes go to which tiles. It also affects properties of 
        tiles such as subtile flipping and foreground properties. Typically, you don't want 
        to change this unless you're creating a new tile set or changing the level to use an 
        existing tile set. Only values 0-25 are actually used in the original game, but you 
        can use values up to 31 which contain uninitialized tile color sets.

    preview:

        Changing things in this section doesn't actually change properties of the level. It 
    is only used to visualize what the tile set will look like. If the currently selected 
    region in a level is changed, then the values will automatically change to the values 
    used in that region.
        If the "auto-color subiltes" option is turned on, the subtiles in the bottom panel 
    will automatically be colored based on the metatiles. Subtiles not used by metatiles 
    will be colored using a grayscale. If this option is turned off, then all of the 
    subtiles will be colored using a grayscale.

    bottom panel:

        The bottom panel lets you change the tiles that can be used in the level. To change 
    a tile, click on a tile in the metatiles section. Then, select which subtile in the tile 
    you want to change in the right panel. Click on a subtile in the subtile section to what 
    subtile is used by the tile.
        To change the palettes used by the tile, hover the mouse in palettes section until a 
    green box is drawn around the palettes you want to use. Clicking on the actual colors 
    will let you change colors used in the palette set. These colors can also be changed in 
    the palette Sets panel.
        In both the subtiles and palettes sections, the selected components will be 
    displayed with a blue box, and the blue box will have a corner colored red indicating 
    which subtile is using that component. So, if all 4 parts of the subtile use the same 
    component, then there will be one red box. In the metatiles section, the selected tile 
    will have a red box around it. If it has a background, a blue box will be drawn around 
    the background tile. If a tile uses the selected tile as a background, then all of the 
    tiles that use it as a background will have a green box around it.
 
        In the right panel, you have the option to change the behavior of the tile. They are 
    listed in the order that they appear in the rom, so that is why it is not alphabetical. 
        In the right panel, you also have the option to change whether or not subtiles 
    within the tile are flipped. You can also change whether or not the subtile appears in 
    the foreground. However, only the last 3 palettes that the subtile uses will appear in 
    the foreground. So, unfortunately, it may be hard to get the best use out of the 
    foreground option since most of the palettes don't have the first color as the one you 
    would want to have in the background. Subtile flipping and making subtiles appear in the 
    foreground were never actually used in the original game, but the game is still capable 
    of doing it.

    Subtiles section: 
    subtiles 0-79 are the primary subtiles.
    Subtiles 80-127 are the secondary subtiles.
    Subtiles 128-159 are some of the Wario sprites.
    Subtiles 160-191 are used for the coin counter, temporary coins, and other effects.
    Subtiles 192-255 are used for object graphics.


    Tiles with IDs 96 through 111 are used by switches (the IDs of the tiles are shown 
on the right side of the bottom panel). For switches to display properly in the editor, 
a tile of type "switch" must be used in both tile IDs 96 and 104. Tiles 96-103 are used 
when the switch is down, and tiles 104-111 are used when the switch is up.

--------------------------------------------------------------------------------------------

X. GRAPHICS

    As of version 1.2.0, graphics can be edited from the "Graphics" panel. Unlike tile set 
and palette editing, graphics editing allows you to change the individual pixels of the 
graphics. If you want to know what levels and regions these graphics are used in, hover the 
mouse above the text field to see a list of levels and regions that use the graphics.

    There are 9 types of graphics that can be edited: primary subtiles, secondary subtiles, 
animated subtiles, Wario subtiles, object subtiles 1, object subtiles 2, boss subtiles, 
cutscene/credit subtiles, treasure subtiles, misc subtiles, and fixed size subtiles.

    Subtile types:

    -Primary subtiles: These are used in the tile sets of levels. Primary tile sets always 
        begin with the numbers 1 through 4. These numbers are replaced with animated 
        subtiles, so editing them won't have any effect.
    -Secondary subtiles: These function the same as primary subtiles. When editing tile sets,
        different combinations of primary and secondary subtiles can be used.
    -Animated subtiles: These always have 4 frames of animation. Frame 1 is displayed on the 
        top row and frame 4 is displayed on the bottom row when viewed with 8x8 orientation.
    -Wario subtiles: These are the sprites used to draw Wario in the game. These include his 
        main sprites as well as his alternate forms.
    -Object subtiles: These are the sprites used to draw objects.
    -Boss subtiles: These are the sprites used to draw bosses.
    -Cutscene/credit subtiles: These are used in the cutscenes and credits (sets 0-16 are 
        used in cutscenes, and 17-18 are used only in the credits)
    -Treasure subtiles: Contains the graphics for treasure. Note that these do not affect 
        the treasure graphics on the overworld's level select screen or the pause menu.
        These affect how the treasure appears in the treasure minigame and at the end of 
        level screen. You can find the overworld and pause menu graphics, in the fixed size 
        subtiles.
    -Misc subtiles: These include things such as spawned coins, coin counter sprites, etc.
    -Fixed size subtiles: Unfortunately due to the way the game stores its graphics, some of 
        the graphics may overflow into other parts of the rom and cause unexpected 
        consequences if the compressed size of the graphics are too large. These graphics 
        include things such as the title screen, the overworld UI, and minigames. To edit 
        these graphics, you will need to make sure that the compressed size is not too 
        large. When editing these graphics, text will appear to the right of the graphics 
        showing you how much space you have left. If the size goes over then the text will 
        turn red. If you try to save your changes when the size is too big, the changes to 
        those graphics will be ignored. Normally you can get away with not knowing how the 
        compression algorithm works when changing these graphics, but if you want to know 
        how to reduce the size, keep reading.
            Graphics are compressed by looking at repeating lines of graphics. A "line" is a 
        horiztonal row of 8 pixels. Each subtile is 8x8 and therefore contains 8 horizontal 
        lines stacked on top of each other. Subtiles that are solid color for example can be 
        compressed since all 8 lines are identical. In addition, if the solid color subtile 
        has another subtile next to it, those two subtiles will be compressed together. To 
        know which order the subtiles are in to figure out if they're "next" to each other, 
        change the orientation to 8x8. Now look at the top left subtile and go to the right 
        until you're looking at the top right subtile. Then go back to the left and one 
        column down (like reading the words on the page of a book) until you get to the 
        bottom right subtile. The order that you looked at the subtiles is their order. 
        Several adjacent subtiles with identical lines in a row tend to compress, so keep 
        that in mind when reducing the compressed size.

    The graphics panel:

    -Import: Pressing this button allows you to import an image to replace the graphics that 
        you are editing.
    -Export: Pressing this button allows you to export the image so that it can be edited in 
        external program.
    -Type: The category of graphics to choose from.
    -Set: The set within the type of graphics that you can edit.
    -Brush size: This changes how big the brush size is When editing graphics in the bottom 
        panel.
    -Display grid: Divides the image into 8x8 subtiles so that it is easier to see which 
        subtile you are editing.
    -Zoom: Affects how large the image in the bottom panel appears.
    -Preview: Changes what colors are used to preview the image. This does not actually 
        affect the graphics in any way. Like the palettes in the "Palette Sets" panel, these 
        can be copy and pasted. Additionally, they can be reset to the original grayscale 
        by pressing the R button.
    -Paint color: Lets you choose which color is used to draw with when editing the graphics.
    -Orientation: Changes the orientation of the graphics to make it easier to see. Changing 
        this does not affect the graphics.

    Editing graphics:
    
        In the bottom panel, you can edit the graphics. Left click to draw the currently 
    selected color on the graphics. To change the currently selected color, either change 
    this value in the top panel, or right click on the image to set the color to the pixel 
    that the mouse is on top of.
        Alternatively, you can export the image and edit it in an external program, then 
    import it back into the editor. When in image is exported, the top of the image will 
    contain the 4 colors that are used to draw the image. Make sure that the 4 colors on the 
    top of the image match the colors in the rest of the image, otherwise they will not show 
    up when imported. Also, if you try to import an image that does not match the correct 
    dimensions of the image, it will not import. Importing and exporting is also a good way 
    to copy and paste graphics from one set to another.

--------------------------------------------------------------------------------------------

XI. PALETTE SETS

    As of version 1.1.0, palette sets be edited from the "Palette Sets" panel. This panel 
allows you to change some of the palette sets used in the game. Like the tile set panel, 
this panel edits the resources in the game, so changing things here can change things in 
other levels. If you want to know what levels and regions these resources are used in, hover 
the mouse above the text field to see a list of levels and regions that use the resource. 
There are three different types of palettes that can be edited: tiles, objects, and misc.

    Editing tile palette sets is fairly straight forward. Select which set you want to edit 
and click on a color to edit the colors used. In the original game, only palettes 0-69 are 
actually used in the original game, but you can still edit palette sets up to 202 and use 
those. Changing the selected region will automatically change the palette set you're editing 
to the palette set used by the region. Colors used in palette sets can also be changed in 
Tile Set panel.

    Editing object set palettes is a little different. Select the object set you want to 
edit and a preview of the objects will show up on the right. Each object set has 4 palettes 
that it uses, and each palette has 3 colors. In the preview of the objects, switch between 
palettes until it matches with the colors you want to edit. This will help you know which 
palette you want to edit. Then, go to the palette you want to edit and change the change the 
color.
    In some of the object sets such as the ones that make Wario catch on fire or become fat, 
you can actually change the color of Wario's alternate form. Go to the palette in the object 
set that matches the colors of Wario's alternate form and change it there.

    Misc palettes apply to the whole game, and not the specific region. These include 
Wario's colors and spawned coin colors.

    On the right side of each palette in a palette set, there are two buttons: C and P. 
Pressing C copies a palette. Pressing P pastes a palette. To copy a palette to another 
palette, press the C button next to the palette that you want to copy. Then, press P next to 
the palette you want to paste the colors to.

--------------------------------------------------------------------------------------------

XII. OBJECT SETS

    As of version 1.3.0, object sets can be edited from the "Object Sets" panel. This panel 
allows you to mix different object types together that were not together in the original 
game. Since each object uses certain graphics, the objects used in the object set must match 
the graphics in the object set. Otherwise, the objects may display incorrectly. If you want 
to add a new object set, just edit and use object sets 97-126 since those object sets are 
all duplicates that are never actually used in the original game. If you want to know what 
levels and regions these object sets are used in, hover the mouse above the text field to 
see a list of levels and regions that use the object sets.

    At the top left, there are different boxes with numbers in them that look similar to the 
boxes used in the "Objects" panel. Select a box to edit what object is used in that slot in 
the object set. After selecting the object, use the drop-down box to change what the object 
type is. The objects are listed in the order that they appear in the rom.

    -Object set: The current object set being edited. This will automatically update if the 
        currently selected region is changed.
    -Subtiles 1: The first half of subtiles used to draw some of the object graphics.
    -Subtiles 2: The second half of subtiles used to draw some of the object graphics.
    -Wario subtiles: Some of the objects cause Wario to change forms. Change this to set 
        which graphics are displayed by Wario when he changes forms. Setting this to 0 will 
        make Wario invisible when in an alternate form.

--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

Part 4: OTHER

--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------

XIII. CREDITS

    As of version 1.4.0, the ending credits can be edited. To change which section of the 
credits that you're editing, use the dropdown in the top section. On the bottom section, the 
area is divided into a left section and a right section. The left section contains the 
letters/graphics that are used to create the credits. The right section shows what the 
credits will look like.

    To change the credits, click on one of the graphics on the left section to select it, 
then click on a spot on the right section to place that graphic. Alternatively, you can 
right click on a graphic in the right section to select the matching graphic in the left 
section. The left section is divided into two parts: big graphics and small graphics. Big 
graphics can only be placed in spots where big graphics (such as the W in Wario at the 
beginning of the credits) already exist. Similarly, small graphics can only be placed where 
small graphics (such as the a, r, i, and o in Wario) already exist. Note that since you must 
place the graphic in a place that already contains a spot for graphics, you cannot create 
words that are longer than the original words in the credits.

    If you want to change the actual graphics that are used in the credits, you can do so by 
editing the Cutscene/credit subtiles in the graphics tab. See the GRAPHICS section for more 
details. 

--------------------------------------------------------------------------------------------

XIV. ALTERNATE TILE SETS

    Alternate tile sets allow you to have multiple tile graphics in the same level. When a 
tile set is changed to an alternate tile set when playing a level, the behavior of the tiles 
do not change. Only the graphics change. Therefore, when using an alternate tile set, make 
sure that the alternate tile set's graphics match up to the behavior of the tiles in the 
level you are editing.

    Specifying that a region uses an alternate tile set isn't enough for alternate tile 
sets to work. To get it to work when actually playing the level, you must go into the 
"Tiles" panel and select the tile with the type "warp door (change tile set)". This door 
must be used to travel to and from the region with the alternate tile set. You do not need 
to use this type of door if you are travelling between two regions that both use an 
alternate tile set. Also, since you can only change the tile set when going through a door, 
you cannot start the level using an alternate tile set.

--------------------------------------------------------------------------------------------

XV. BOSS ROOMS

    Boss rooms are a little tricky to set up. If you want a boss room, you must first select 
the region that you want the boss to be in. Then, change the scroll type to "boss". Then, 
change the object set to be 128 or 130-139. Also, place an object of type "boss" in the 
region. Since object sets 128-139 contain more sprites than the other object sets, any 
region warped to from the boss room must contain object set 129 or else the sprites will not 
display correctly. In the levels, they don't use object set 129 as the default object set, 
but change the object set to 129 when warping out of the boss room. Also, boss rooms are 
traditionally entered through a special door of type "warp door (boss)". Going through this 
door just causes the music to mute when entering the boss room. However, it isn't actually 
necessary to use this door for the boss to work.

--------------------------------------------------------------------------------------------

XVI. SOURCE CODE

    As of version 1.3.2, the source code is included with the editor.

    The source code for WL2Editor uses the GNU General Public License (GPL). Before 
releasing a modified version of the source code, make sure that you obey the terms and 
conditions of the GNU General Public License. No derivative works of the editor should ever 
be sold. Any derivative work should give credit to the original author of the source code. 

    The project is built using jdk1.6.0_45.

--------------------------------------------------------------------------------------------

XVII. MISC

    When using this editor, you may find things that were not used in the original game. 
Some of these are listed in the "The Cutting Room Floor", a website for listing things in 
video games that were left out. If you find anything that's not listed there, feel free to 
add it to the website: https://tcrf.net/Wario_Land_II

    More information about the contents of the rom can be found at this page:
http://datacrystal.romhacking.net/wikid/index.php?title=Wario_Land_II
Not much information is on this page, but I've put together a rom map on the page that may 
be helpful if you want to manually hack the game. If you're looking through the rom and find 
anything else useful, make sure to add it to the page.